package com.zyf.chapter02.structure.adapter.example3;

/**
 * 外部系统 A 的使用示例
 * 替换依赖的外部系统
 * @author yifeng
 */
public class Demo {
    private IA a;
    public Demo(IA a) {
        this.a = a;
    }

    public static void main(String[] args) {
        Demo d = new Demo(new A());
        // 借助 BAdaptor，Demo 的代码中，调用 IA 接口的地方都无需改动
        // 只需要将 BAdaptor 如下注入到 Demo 即可。
        Demo d2 = new Demo(new BAdaptror(new B()));
    }
}
